package com.css.fxfzypg.modules.baseData.entity;

import cn.afterturn.easypoi.excel.annotation.Excel;
import com.css.fxfzypg.common.utils.excel.ExcelPropertyCheck;
import com.css.fxfzypg.util.PlatformObjectUtils;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.math.BigDecimal;

/**
 * data_hos_peo
 * @author
 * 人口和建筑物概况
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class HosPeoEntity extends PublicEntity implements Serializable {
    /**
     * id
     */
    private String dhpId;
    @Excel(name = "省")
    @ExcelPropertyCheck(index = 0,name = "省")
    private String province;

    /**
     * 市
     */
    @Excel(name = "市")
    @ExcelPropertyCheck(index = 1,name = "市")
    private String city;

    /**
     * 区（县）
     */
    @Excel(name = "区（县）")
    @ExcelPropertyCheck(index = 2,name = "区(县)")
    private String prefecture;
    /**
     * 区县面积（km2）
     */
    @Excel(name = "区县面积（km2）")
    @ExcelPropertyCheck(index = 3,name = "区县面积（km2）",pointmaxLength = 2)
    private BigDecimal dhpCountyArea;

    /**
     * 总人口（（万）
     */
    @Excel(name = "总人口（万）")
    @ExcelPropertyCheck(index = 4,name = "总人口（万）",pointmaxLength = 4)
    private BigDecimal dhpTotalPop;

    /**
     * 城镇人口（万）
     */
    @Excel(name = "城镇人口（万）")
    @ExcelPropertyCheck(index = 5,name = "城镇人口（万）",pointmaxLength = 4,required = false)
    private BigDecimal dhpTownPop;

    /**
     * 农村人口（万）
     */
    @ExcelPropertyCheck(index = 6,name = "农村人口（万）",pointmaxLength = 4,required = false)
    @Excel(name = "农村人口（万）")
    private BigDecimal dhpVillagePop;

    /**
     * 人口比例%（少年儿）
     */
    @Excel(name = "人口比例%（少年儿）")
    @ExcelPropertyCheck(index = 7,name = "人口比例%（少年儿）",pointmaxLength = 2,required = false)
    private BigDecimal dhpYoungRatio;

    /**
     * 人口比例%
（中青年）
     */
    @ExcelPropertyCheck(index = 7,name = "人口比例%（中青年）",pointmaxLength = 2,required = false)
    @Excel(name = "人口比例%（中青年）")
    private BigDecimal dhpMiddleRatio;

    /**
     * 人口比例%
（老年）
     */
    @ExcelPropertyCheck(index = 7,name = "人口比例%（老年）",pointmaxLength = 2,required = false)
    @Excel(name = "人口比例%（老年）")
    private BigDecimal dhpOldTatio;

    /**
     * 住宅房屋占比（%）
     */
    @Excel(name = "住宅房屋占比（%）")
    @ExcelPropertyCheck(index = 7,name = "住宅房屋占比（%）",pointmaxLength = 2)
    private BigDecimal dhpHouseTatio;

    /**
     * 城镇地区建筑占总体建筑物的比例（%）
     */
    @Excel(name = "城镇地区建筑占总体建筑物的比例（%）")
    @ExcelPropertyCheck(index = 7,name = "城镇地区建筑占总体建筑物的比例（%）",pointmaxLength = 2)
    private BigDecimal dhpTownTatio;

    /**
     * 城镇地区结构类型占比（%）高层建筑
     */
    @Excel(name = "城镇地区结构类型占比（%）高层建筑")
    @ExcelPropertyCheck(index = 7,name = "城镇地区结构类型占比（%）高层建筑",pointmaxLength = 2)
    private BigDecimal dhpTownHighTatio;

    /**
     * 城镇地区结构类型占比（%）钢结构
     */
    @Excel(name = "城镇地区结构类型占比（%）钢结构")
    @ExcelPropertyCheck(index = 7,name = "城镇地区结构类型占比（%）钢结构",pointmaxLength = 2)
    private BigDecimal dhpTownSteelTatio;

    /**
     * 城镇地区结构类型占比（%）多层钢筋混凝土结构
     */
    @Excel(name = "城镇地区结构类型占比（%）多层钢筋混凝土结构")
    @ExcelPropertyCheck(index = 7,name = "城镇地区结构类型占比（%）多层钢筋混凝土结构",pointmaxLength = 2)
    private BigDecimal dhpTownBetonTatio;

    /**
     * 城镇地区结构类型占比（%）砖混结构
     */
    @Excel(name = "城镇地区结构类型占比（%）砖混结构")
    @ExcelPropertyCheck(index = 7,name = "城镇地区结构类型占比（%）砖混结构",pointmaxLength = 2)
    private BigDecimal dhpTownBrickTatio;

    /**
     * 城镇地区结构类型占比（%）砖木结构
     */
    @Excel(name = "城镇地区结构类型占比（%）砖木结构")
    @ExcelPropertyCheck(index = 7,name = "城镇地区结构类型占比（%）砖木结构",pointmaxLength = 2)
    private BigDecimal dhpTownMasonryTatio;

    /**
     * 城镇地区结构类型占比（%）土结构
     */
    @Excel(name = "城镇地区结构类型占比（%）土结构")
    @ExcelPropertyCheck(index = 7,name = "城镇地区结构类型占比（%）土结构",pointmaxLength = 2)
    private BigDecimal dhpTownSoilTatio;

    /**
     * 城镇地区结构类型占比（%）木结构
     */
    @Excel(name = "城镇地区结构类型占比（%）木结构")
    @ExcelPropertyCheck(index = 7,name = "城镇地区结构类型占比（%）木结构",pointmaxLength = 2)
    private BigDecimal dhpTownWoodTatio;

    /**
     * 城镇地区结构类型占比（%）石结构
     */
    @Excel(name = "城镇地区结构类型占比（%）石结构")
    @ExcelPropertyCheck(index = 7,name = "城镇地区结构类型占比（%）石结构",pointmaxLength = 2)
    private BigDecimal dhpTownStoneTatio;

    /**
     * 城镇地区结构类型占比（%）其他结构
     */
    @Excel(name = "城镇地区结构类型占比（%）其他结构")
    @ExcelPropertyCheck(index = 7,name = "城镇地区结构类型占比（%）其他结构",pointmaxLength = 2)
    private BigDecimal dhpTownOtherTatio;

    /**
     * 城镇地区年代类型占比%（70年前）
     */
    @Excel(name = "城镇地区年代类型占比%（1970年以前）")
    @ExcelPropertyCheck(index = 7,name = "城镇地区年代类型占比%（1970年以前）",pointmaxLength = 2,required = false)
    private BigDecimal dhpTownSevenBeforeTatio;

    /**
     * 城镇地区年代类型占比%
（70年代）
     */
    @Excel(name = "城镇地区年代类型占比%（1971年-1980年）")
    @ExcelPropertyCheck(index = 7,name = "城镇地区年代类型占比%（1971年-1980年）",pointmaxLength = 2,required = false)
    private BigDecimal dhpTownSevenTatio;

    /**
     * 城镇地区年代类型占比%
（80年代）
     */
    @Excel(name = "城镇地区年代类型占比%（1981年-1990年）")
    @ExcelPropertyCheck(index = 7,name = "城镇地区年代类型占比%（1981年-1990年）",pointmaxLength = 2,required = false)
    private BigDecimal dhpTownEightTatio;

    /**
     * 城镇地区年代类型占比%
（90年代）
     */
    @Excel(name = "城镇地区年代类型占比%（1991年-2000年）")
    @ExcelPropertyCheck(index = 7,name = "城镇地区年代类型占比%（1991年-2000年）",pointmaxLength = 2,required = false)
    private BigDecimal dhpTownNineTatio;

    /**
     * 城镇地区年代类型占比%
（00年代）
     */
    @Excel(name = "城镇地区年代类型占比%（2001年-2010年）")
    @ExcelPropertyCheck(index = 7,name = "城镇地区年代类型占比%（2001年-2010年）",pointmaxLength = 2,required = false)
    private BigDecimal dhpTownZeroTatio;

    /**
     * 城镇地区年代类型占比%
（10年后）
     */
    @Excel(name = "城镇地区年代类型占比%（2011年-2015年）")
    @ExcelPropertyCheck(index = 7,name = "城镇地区年代类型占比%（2011年-2015年）",pointmaxLength = 2,required = false)
    private BigDecimal dhpTownTenTatio;

    /**
     * 城镇地区年代类型占比%
     （10年后）
     */
    @Excel(name = "城镇地区年代类型占比%（2016年-2020年）")
    @ExcelPropertyCheck(index = 7,name = "城镇地区年代类型占比%（2016年-2020年）",pointmaxLength = 2,required = false)
    private BigDecimal dhpTownSixteenTatio;

    /**
     * 城镇地区年代类型占比%
     （10年后）
     */
    @Excel(name = "城镇地区年代类型占比%（2021年及以后）")
    @ExcelPropertyCheck(index = 7,name = "城镇地区年代类型占比%（2021年及以后）",pointmaxLength = 2,required = false)
    private BigDecimal dhpTownTwentyOneTatio;
    /**
     * 城镇地区室内财产（元/每平米）
     */
    @Excel(name = "城镇地区室内财产（元/每平米）")
    @ExcelPropertyCheck(index = 7,name = "城镇地区室内财产（元/每平米）",pointmaxLength = 2)
    private BigDecimal dhpTownIndoorProperty;

    /**
     * 农村地区结构类型占比（%）高层建筑
     */
    @Excel(name = "农村地区结构类型占比（%）高层建筑")
    @ExcelPropertyCheck(index = 7,name = "农村地区结构类型占比（%）高层建筑",pointmaxLength = 2)
    private BigDecimal dhpVillageHighTatio;

    /**
     * 农村地区结构类型占比（%）钢结构
     */
    @Excel(name = "农村地区结构类型占比（%）钢结构")
    @ExcelPropertyCheck(index = 7,name = "农村地区结构类型占比（%）钢结构",pointmaxLength = 2)
    private BigDecimal dhpVillageSteelTatio;

    /**
     * 农村地区结构类型占比（%）多层钢筋混凝土结构
     */
    @Excel(name = "农村地区结构类型占比（%）多层钢筋混凝土结构")
    @ExcelPropertyCheck(index = 7,name = "农村地区结构类型占比（%）多层钢筋混凝土结构",pointmaxLength = 2)
    private BigDecimal dhpVillageBetonTatio;

    /**
     * 农村地区结构类型占比（%）砖混结构
     */
    @Excel(name = "农村地区结构类型占比（%）砖混结构")
    @ExcelPropertyCheck(index = 7,name = "农村地区结构类型占比（%）砖混结构",pointmaxLength = 2)
    private BigDecimal dhpVillageBrickTatio;

    /**
     * 农村地区结构类型占比（%）砖木结构
     */
    @Excel(name = "农村地区结构类型占比（%）砖木结构")
    @ExcelPropertyCheck(index = 7,name = "农村地区结构类型占比（%）砖木结构",pointmaxLength = 2)
    private BigDecimal dhpVillageMasonryTatio;

    /**
     * 农村地区结构类型占比（%）土结构
     */
    @Excel(name = "农村地区结构类型占比（%）土结构")
    @ExcelPropertyCheck(index = 7,name = "农村地区结构类型占比（%）土结构",pointmaxLength = 2)
    private BigDecimal dhpVillageSoilTatio;

    /**
     * 农村地区结构类型占比（%）木结构
     */
    @Excel(name = "农村地区结构类型占比（%）木结构")
    @ExcelPropertyCheck(index = 7,name = "农村地区结构类型占比（%）木结构",pointmaxLength = 2)
    private BigDecimal dhpVillageWoodTatio;

    /**
     * 农村地区结构类型占比（%）石结构
     */
    @Excel(name = "农村地区结构类型占比（%）石结构")
    @ExcelPropertyCheck(index = 7,name = "农村地区结构类型占比（%）石结构",pointmaxLength = 2)
    private BigDecimal dhpVillageStoneTatio;

    /**
     * 农村地区结构类型占比（%）其他结构
     */
    @Excel(name = "农村地区结构类型占比（%）其他结构")
    @ExcelPropertyCheck(index = 7,name = "农村地区结构类型占比（%）其他结构",pointmaxLength = 2)
    private BigDecimal dhpVillageOtherTatio;

    /**
     * 农村地区年代类型占比%
（1980年以前）
     */
    @Excel(name = "农村地区年代类型占比%（1980年以前）")
    @ExcelPropertyCheck(index = 7,name = "农村地区年代类型占比%（1980年以前）",pointmaxLength = 2,required = false)
    private BigDecimal dhpVillage1980Before;

    /**
     * 农村地区年代类型占比%
（1981年-1990年）
     */
    @Excel(name = "农村地区年代类型占比%（1981年-1990年）")
    @ExcelPropertyCheck(index = 7,name = "农村地区年代类型占比%（1981年-1990年）",pointmaxLength = 2,required = false)
    private BigDecimal dhpVillage8190Tatio;

    /**
     * 农村地区年代类型占比%
（1991年-2000年）
     */
    @Excel(name = "农村地区年代类型占比%（1991年-2000年）")
    @ExcelPropertyCheck(index = 7,name = "农村地区年代类型占比%（1991年-2000年）",pointmaxLength = 2,required = false)
    private BigDecimal dhpVillage9100Tatio;

    /**
     * 农村地区年代类型占比%
（2001年-2010年）
     */
    @Excel(name = "农村地区年代类型占比%（2001年-2010年）")
    @ExcelPropertyCheck(index = 7,name = "农村地区年代类型占比%（2001年-2010年）",pointmaxLength = 2,required = false)
    private BigDecimal dhpVillage0110Tatio;

    /**
     * 农村地区年代类型占比%
（2011年-2015年）
     */
    @Excel(name = "农村地区年代类型占比%（2011年-2015年）")
    @ExcelPropertyCheck(index = 7,name = "农村地区年代类型占比%（2011年-2015年）",pointmaxLength = 2,required = false)
    private BigDecimal dhpVillage1115Tatio;

    /**
     * 农村地区年代类型占比%
（2016年-2020年）
     */
    @Excel(name = "农村地区年代类型占比%（2016年-2020年）")
    @ExcelPropertyCheck(index = 7,name = "农村地区年代类型占比%（2016年-2020年）",pointmaxLength = 2,required = false)
    private BigDecimal dhpVillage1620Tatio;

    /**
     * 农村地区年代类型占比%
     （2021年及以后占比）
     */
    @Excel(name = "农村地区年代类型占比%（2021年及以后占比）")
    @ExcelPropertyCheck(index = 7,name = "农村地区年代类型占比%（2021年及以后占比）",pointmaxLength = 2,required = false)
    private BigDecimal dhpVillage21AfterTatio;

/*    *//**
     * 农村地区年代类型占比%
     （10年后）
     *//*
    @Excel(name = "农村地区年代类型占比%（2021年及以后）")
    @ExcelPropertyCheck(index = 7,name = "农村地区年代类型占比%（2021年及以后）",pointmaxLength = 2,required = false)
    private BigDecimal dhpVillageTwentyOneTatio;*/

    /**
     * 农村地区室内财产（元/每平米）
     */
    @Excel(name = "农村地区室内财产（元/每平米）")
    @ExcelPropertyCheck(index = 7,name = "农村地区室内财产（元/每平米）",pointmaxLength = 2)
    private BigDecimal dhpVillageIndoorProperty;

    public BigDecimal getDhpYoungRatio() {
        return dhpYoungRatio= PlatformObjectUtils.isEmpty(dhpYoungRatio)?BigDecimal.ZERO:dhpYoungRatio;
    }

    public BigDecimal getDhpMiddleRatio() {
        return dhpMiddleRatio= PlatformObjectUtils.isEmpty(dhpMiddleRatio)?BigDecimal.ZERO:dhpMiddleRatio;
    }

    public BigDecimal getDhpOldTatio() {
        return dhpOldTatio= PlatformObjectUtils.isEmpty(dhpOldTatio)?BigDecimal.ZERO:dhpOldTatio;
    }

    public BigDecimal getDhpTownSevenBeforeTatio() {
        return dhpTownSevenBeforeTatio= PlatformObjectUtils.isEmpty(dhpTownSevenBeforeTatio)?BigDecimal.ZERO:dhpTownSevenBeforeTatio;
    }

    public BigDecimal getDhpTownSevenTatio() {
        return dhpTownSevenTatio= PlatformObjectUtils.isEmpty(dhpTownSevenTatio)?BigDecimal.ZERO:dhpTownSevenTatio;
    }

    public BigDecimal getDhpTownEightTatio() {
        return dhpTownEightTatio= PlatformObjectUtils.isEmpty(dhpTownEightTatio)?BigDecimal.ZERO:dhpTownEightTatio;
    }

    public BigDecimal getDhpTownNineTatio() {
        return dhpTownNineTatio= PlatformObjectUtils.isEmpty(dhpTownNineTatio)?BigDecimal.ZERO:dhpTownNineTatio;
    }

    public BigDecimal getDhpTownZeroTatio() {
        return dhpTownZeroTatio= PlatformObjectUtils.isEmpty(dhpTownZeroTatio)?BigDecimal.ZERO:dhpTownZeroTatio;
    }

    public BigDecimal getDhpTownTenTatio() {
        return dhpTownTenTatio= PlatformObjectUtils.isEmpty(dhpTownTenTatio)?BigDecimal.ZERO:dhpTownTenTatio;
    }

    public BigDecimal getDhpVillage1980Before() {
        return dhpVillage1980Before = PlatformObjectUtils.isEmpty(dhpVillage1980Before)?BigDecimal.ZERO: dhpVillage1980Before;
    }

    public BigDecimal getDhpVillage8190Tatio() {
        return dhpVillage8190Tatio = PlatformObjectUtils.isEmpty(dhpVillage8190Tatio)?BigDecimal.ZERO: dhpVillage8190Tatio;
    }

    public BigDecimal getDhpVillage9100Tatio() {
        return dhpVillage9100Tatio = PlatformObjectUtils.isEmpty(dhpVillage9100Tatio)?BigDecimal.ZERO: dhpVillage9100Tatio;
    }

    public BigDecimal getDhpVillage0110Tatio() {
        return dhpVillage0110Tatio = PlatformObjectUtils.isEmpty(dhpVillage0110Tatio)?BigDecimal.ZERO: dhpVillage0110Tatio;
    }

    public BigDecimal getDhpVillage1115Tatio() {
        return dhpVillage1115Tatio = PlatformObjectUtils.isEmpty(dhpVillage1115Tatio)?BigDecimal.ZERO: dhpVillage1115Tatio;
    }

    public BigDecimal getDhpVillage1620Tatio() {
        return dhpVillage1620Tatio = PlatformObjectUtils.isEmpty(dhpVillage1620Tatio)?BigDecimal.ZERO: dhpVillage1620Tatio;
    }

    public BigDecimal getDhpVillage21AfterTatio() {
        return dhpVillage21AfterTatio = PlatformObjectUtils.isEmpty(dhpVillage21AfterTatio)?BigDecimal.ZERO: dhpVillage21AfterTatio;
    }
/*
    public BigDecimal getDhpVillageTwentyOneTatio() {
        return dhpVillageTwentyOneTatio= PlatformObjectUtils.isEmpty(dhpVillageTwentyOneTatio)?BigDecimal.ZERO:dhpVillageTwentyOneTatio;
    }*/

    public BigDecimal getDhpTownSixteenTatio() {
        return dhpTownSixteenTatio= PlatformObjectUtils.isEmpty(dhpTownSixteenTatio)?BigDecimal.ZERO:dhpTownSixteenTatio;
    }

    public BigDecimal getDhpTownTwentyOneTatio() {
        return dhpTownTwentyOneTatio= PlatformObjectUtils.isEmpty(dhpTownTwentyOneTatio)?BigDecimal.ZERO:dhpTownTwentyOneTatio;
    }
    private String  provinceCode;
    private String  cityCode;
    private String prefectureCode;
}